package com.hexacta.hrs.report.dtos;

/**
 * DTO del Employee Career Report para el iReport.
 * 
 * Created on May 27, 2009
 * 
 * @author iandronowicz
 * 
 */

public class EmployeeCareerReportDTO implements Comparable<EmployeeCareerReportDTO> {

    public static final String EXPERIENCE_FORMAT = "%d yr, %d m";
    
    private String cuil;
    
    private String firstName;

    private String lastName;

    private String careerRole;

    private String careerRolePosition;

    private String hoursPerDay;

    private String condition;

    private String office;

    private String firstWorkinDay;
    
    private String firstEmployeeDay;
    
    private String lastWorkingDay;

    private String mentor;

    private String experience;

    public EmployeeCareerReportDTO() {
    	cuil = "----";
        firstName = "----";
        lastName = "----";
        careerRole = "----";
        careerRolePosition = "----";
        hoursPerDay = "----";
        condition = "----";
        office = "----";
        firstWorkinDay = "----";
        firstEmployeeDay = "----";
        lastWorkingDay = "----";
        mentor = "----";
        experience = "----";
    }
    
    
    public String getCuil() {
		return cuil;
	}


	public void setCuil(String cuil) {
		this.cuil = cuil;
	}

	/**
     * @return the firstName
     */
    public String getFirstName() {
        return firstName;
    }

    /**
     * @param firstName
     *            the firstName to set
     */
    public void setFirstName(final String firstName) {
        this.firstName = firstName != null ? firstName : "----";
    }

    /**
     * @return the lastName
     */
    public String getLastName() {
        return lastName;
    }

    /**
     * @param lastName
     *            the lastName to set
     */
    public void setLastName(final String lastName) {
        this.lastName = lastName != null ? lastName : "----";
    }

    /**
     * @return the role
     */
    public String getCareerRole() {
        return careerRole;
    }

    /**
     * @param role
     *            the role to set
     */
    public void setCareerRole(final String role) {
        this.careerRole = role != null ? role : "----";
    }

    /**
     * @return the careerRolePosition
     */
    public String getCareerRolePosition() {
        return careerRolePosition;
    }

    /**
     * @param careerRolePosition
     *            the careerRolePosition to set
     */
    public void setCareerRolePosition(final String careerRolePosition) {
        this.careerRolePosition = careerRolePosition != null ? careerRolePosition : "----";
    }

    /**
     * @return the hoursPerDay
     */
    public String getHoursPerDay() {
        return hoursPerDay;
    }

    /**
     * @param hoursPerDay
     *            the hoursPerDay to set
     */
    public void setHoursPerDay(final String hoursPerDay) {
        this.hoursPerDay = hoursPerDay != null ? hoursPerDay : "----";
    }

    /**
     * @return the condition
     */
    public String getCondition() {
        return condition;
    }

    /**
     * @return the office
     */
    public String getOffice() {
        return office;
    }

    /**
     * @param office the office to set
     */
    public void setOffice(String office) {
        this.office = office != null ? office : "----";
    }

    /**
     * @param condition
     *            the condition to set
     */
    public void setCondition(final String condition) {
        this.condition = condition != null ? condition : "----";
    }

    /**
     * @return the firstWorkinDay
     */
    public String getFirstWorkinDay() {
        return firstWorkinDay;
    }

    /**
     * @param firstWorkinDay
     *            the firstWorkinDay to set
     */
    public void setFirstWorkinDay(final String firstWorkinDay) {
        this.firstWorkinDay = firstWorkinDay != null ? firstWorkinDay : "----";
    }
    

    /**
     * @return the lastWorkingDay
     */
    public String getLastWorkingDay() {
        return lastWorkingDay;
    }

    /**
     * @param lastWorkingDay
     *            the lastWorkingDay to set
     */
    public void setLastWorkingDay(final String lastWorkingDay) {
        this.lastWorkingDay = lastWorkingDay != null ? lastWorkingDay : "----";
    }
    
    /**
     * @return the firstEmployeeDay
     */
    public String getFirstEmployeeDay() {
        return firstEmployeeDay;
    }

    /**
     * @param firstEmployeeDay the firstEmployeeDay to set
     */
    public void setFirstEmployeeDay(String firstEmployeeDay) {
        this.firstEmployeeDay = firstEmployeeDay != null ? firstEmployeeDay : "----";
    }

    /**
     * @return the mentor name
     */
    public String getMentor() {
        return mentor;
    }

    /**
     * @param mentor
     *            the mentor name to set
     */
    public void setMentor(final String mentor) {
        this.mentor= mentor != null ? mentor : "----";
    }
    
    /**
     * @return the experience
     */
    public String getExperience() {
        return experience;
    }

    /**
     * @param experience the experience to set
     */
    public void setExperience(String experience) {
        this.experience = experience != null ? experience : "----";
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int compareTo(final EmployeeCareerReportDTO o) {
        return (this.getLastName()).compareTo(o.getLastName());
    }

}
